package com.pureut.order.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.experimental.Accessors;

import java.util.Date;

/***
 * 委外订单实体
 * Author:C
 * Date:2022/12/02 9:46
 * @DESC
 */
@Data
@TableName("subcontracting_order")
@Accessors(chain = true)
public class SubcontractingOrder {

    /**
     * id
     */
    @TableId(type = IdType.AUTO)
    private long id;

    /**
     * 部门id
     */
    private long deptId;

    /**
     * 委外订单号
     */
    private String subcontractingOrderNum;

    /**
     * 关联单号
     */
    private String associatedDocNum;

    /**
     * 单据状态
     */
    private int status;

    /**
     * 物料id
     */
    private long materialId;

    /**
     * 物料编码
     */
    private String materialCode;

    /**
     * 物料类型
     */
    private int materialType;

    /**
     * 委外合同编号
     */
    private String subcontractingContractNum;

    /**
     * 委外重量
     */
    private String subcontractingWeight;

    /**
     * 到货重量
     */
    private double arrivedWeight;

    /**
     * 退回重量
     */
    private double backWeight;

    /**
     * 需求时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date demandTime;

    /**
     * 创建人
     */
    private String createBy;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * BOM数据id
     */
    private String bomCode;

    /**
     * 加工商id
     */
    private long converterId;

    /**
     * 备注
     */
    private String remark;

    /**
     * 合同url
     */
    private String contractUrl;

    /**
     * 审核人
     */
    private String reviewedBy;
    /**
     * 审核时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date reviewedTime;

    /**
     * 关结原因
     */
    private String closeReason;

    /**
     * 委外类型
     */
    private int subType;

    /**
     * 厚度
     */
    private String thickness;

}
